<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>模块列表</title>
		<%@ include file="../jslib/jquerylib.jsp" %>
		<script type="text/javascript" src="<%=request.getContextPath() %>/jslib/lhgdialog/lhgcore.lhgdialog.min.js?skin=mac"></script>
		<link rel="stylesheet" type="text/css" media="screen" href="<%=request.getContextPath() %>/jslib/js/mypage.js" />
		<style>
		html,body {
			margin: 0;
			padding: 0;
			font-family: "Microsoft YaHei";
			font-size: 12.5px;;
		}
		html{
		    overflow-x: hidden;
			overflow-y: hidden;
		}
		.button_b{cursor:hand;}
		
		</style>
		<script type="text/javascript" >
		var api = frameElement.api, W = api.opener;
		$(document).ready(function(){ 
						$("#gridTable").jqGrid({
							url:'queryAutoFormFieldListByFormId.action?formsId=<%=request.getParameter("formId")%>',
							datatype: "json",
							height: "440",
							width: "1020", 
							colNames:['编号','字段中文名','字段英文名','字段说明','字段类型','是否只读','验证类型','是否列表显示','是否页面显示','显示序列','列表显示宽度','是否排序','默认值'],
							colModel:[
								{name:'ID',index:'ID', width:60, key:true, sorttype:"int"},								
								{name:'cn_name',index:'cn_name', width:140},
								{name:'field_name',index:'field_name', width:110},
								{name:'field_note',index:'field_note', width:150},
								{name:'field_type',index:'field_type', width:90},
								{name:'is_read_only',index:'is_read_only', width:60},
								{name:'authentication_type',index:'authentication_type', width:60},
								{name:'is_list_show',index:'is_list_show', width:150,hidden:true,hidedlg:true},
								{name:'is_page_show',index:'is_page_show', width:80},
								{name:'show_seq',index:'show_seq', width:80},
								{name:'field_list_width',index:'field_list_width', width:80},
								{name:'is_order_by',index:'is_order_by', width:80},
								{name:'default_value',index:'default_value', width:80}
							], 
							shrinkToFit:false,
							sortname:'show_seq',
							sortorder:'asc',
							viewrecords:true,
							multiselect: true, // 是否显示复选框
							multiboxonly : true, 
							rownumbers: false,//显示行号
							editable:true, 
							rowNum:<%=session.getAttribute("SYS_PAGECOUNT")%>,
							rowList:[15,20,50,200,500],
							toolbar: [false,"top"],
							jsonReader: {
								root:"rows",		// 数据行（默认为：rows）
								page: "page",  	// 当前页
								total: "total",  // 总页数
								records: "records",  // 总记录数
								repeatitems : false		// 设置成false，在后台设置值的时候，可以乱序。且并非每个值都得设
							},
							prmNames:{rows:"rows",page:"page",sort:"sidx",order:"sord",search:"search"},
							pager:"#gridPager",
							caption: "字段列表"
					});
					jQuery("#gridTable").jqGrid('navGrid','#gridPager',{add:false,edit:false,del:false,search:false,refresh:false});
					jQuery("#gridTable").jqGrid('navButtonAdd','#gridPager',
							{ 	
							caption: "列状态",                          
							title: "Reorder Columns",                           
							onClickButton : function (){                               
							jQuery("#gridTable").jqGrid('setColumns');                           
							}
					}); 
		});  

		//添加字段
		function addField(){
			W.$.dialog({
		        title: '表单字段添加',
		        content: 'url:'+'<%=request.getContextPath() %>/form/auto_form_field_add_new.jsp?formId='+'<%=request.getParameter("formId")%>'+'&formTableName='+'<%=request.getParameter("formTableName")%>'+'&temp='+Math.round(Math.random()*10000),
		        okVal: false,//确定按钮文字
		        cancelVal: false,//取消按钮文字
		        min: true, //是否显示最小化按钮
		        max: false,//是否显示最大化按钮
		        fixed: false,//开启静止定位
		        lock: true,//开启锁屏
		        focus: true,//弹出窗口后是否自动获取焦点（4.2.0新增）
		        time: null,//设置对话框显示时间
		        resize: true,//是否允许用户调节尺寸
		        drag: true,//是否允许用户拖动位置
		        cache: false,//是否缓存iframe方式加载的窗口内容页
		       // parent:api,
		        width: '1000px',
		        //height: '700px'
		        height: '500px'
			});
		}
		
		//编辑
		function editField(){
			var ids = $("#gridTable").jqGrid("getGridParam", "selarrrow");
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
				} 
			if(ids.length > 1){
				alert("只能选择一条数据！");
				return false;
			}
			var row = $("#gridTable").jqGrid("getRowData", ids);
			var autoFormFieldId = row.ID;
			W.$.dialog({
		        title: '表单字段修改',
		        content: 'url:'+'getAutoFormFieldById.action?autoFormFieldId='+autoFormFieldId+'&type=2&formId='+'<%=request.getParameter("formId")%>'+'&formTableName='+'<%=request.getParameter("formTableName")%>'+'&temp='+Math.round(Math.random()*10000),
		        okVal: false,//确定按钮文字
		        cancelVal: false,//取消按钮文字
		        min: true, //是否显示最小化按钮
		        max: false,//是否显示最大化按钮
		        fixed: false,//开启静止定位
		        lock: true,//开启锁屏
		        focus: true,//弹出窗口后是否自动获取焦点（4.2.0新增）
		        time: null,//设置对话框显示时间
		        resize: true,//是否允许用户调节尺寸
		        drag: true,//是否允许用户拖动位置
		        cache: false,//是否缓存iframe方式加载的窗口内容页
		       // parent:api,
		        width: '1000px',
		       // height: '700px'
		       height: '600px'
			});
		}
		
		//删除字段
		function delField()
		{
			var ids = $("#gridTable").jqGrid("getGridParam","selarrrow");
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
				} 
			if(ids.length > 1){
				alert("只能选择一条数据！");
				return false;
			}
			if(confirm("是否确认删除?")){
				var row = $("#gridTable").jqGrid("getRowData", ids);
				var columenName = encodeURIComponent(row.field_name);
				
				var params = {  "autoFormFieldId" : row.ID,"formTableName":"<%=request.getParameter("formTableName")%>","columnName":columenName};  
			    var actionUrl = "deleteFormFieldById.action";  
			    $.ajax({  
			        url : actionUrl,  
			        data : params,  
			        dataType : "json",  
			        cache : false,  
			        error : function(textStatus, errorThrown) {  
			            alert("系统ajax交互错误: " + textStatus);  
			        },  
			        success : function(data, textStatus) {  
			          	alert("删除成功！");
			          	refresh();
			        }  
			    });  
		    }
		}
		
		function upField(){
			var ids = $("#gridTable").jqGrid("getGridParam","selarrrow");
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
				} 
			if(ids.length > 1){
				alert("只能选择一条数据！");
				return false;
			}
			var row = $("#gridTable").jqGrid("getRowData", ids);
				var fieldname = encodeURIComponent(row.fieldname);
				
				var params = {  "fieldname" : fieldname,"modelid":"<%=request.getParameter("fromId")%>"};  
			    var actionUrl = "autoFromsAction!upFromFieldById.action";  
			    $.ajax({  
			        url : actionUrl,  
			        data : params,  
			        dataType : "json",  
			        cache : false,  
			        error : function(textStatus, errorThrown) {  
			            alert("系统ajax交互错误: " + textStatus);  
			        },  
			        success : function(data, textStatus) {  
			          	alert("操作成功！");
			          	refresh();
			        }  
			    });
		}
		
		function downField(){
			var ids = $("#gridTable").jqGrid("getGridParam","selarrrow");
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
				} 
			if(ids.length > 1){
				alert("只能选择一条数据！");
				return false;
			}
			var row = $("#gridTable").jqGrid("getRowData", ids);
				var fieldname = encodeURIComponent(row.fieldname);
				
				var params = {  "fieldname" : fieldname,"modelid":"<%=request.getParameter("fromId")%>"};  
			    var actionUrl = "autoFromsAction!downFromFieldById.action";  
			    $.ajax({  
			        url : actionUrl,  
			        data : params,  
			        dataType : "json",  
			        cache : false,  
			        error : function(textStatus, errorThrown) {  
			            alert("系统ajax交互错误: " + textStatus);  
			        },  
			        success : function(data, textStatus) {  
			          	alert("操作成功！");
			          	refresh();
			        }  
			    });
		}
		
		function refresh()
		{
			jQuery("#gridTable").jqGrid('setGridParam',
				{
					url:'queryAutoFormFieldListByFormId.action?formsId=<%=request.getParameter("formId")%>'
				}).trigger("reloadGrid", [{page:1}]); 
		}
		
		function setKey(){
			var ids = $("#gridTable").jqGrid("getGridParam","selarrrow");
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
				} 
			if(ids.length > 1){
				alert("只能选择一条数据！");
				return false;
			}
			
			var row = $("#gridTable").jqGrid("getRowData", ids);
			var fieldname = encodeURIComponent(row.fieldname);
			
			var params = {  "fieldname" : fieldname,"modelid":"<%=request.getParameter("fromId")%>"};  
		    var actionUrl = "autoFromsAction!setFromFieldKeyById.action";  
		    $.ajax({  
		        url : actionUrl,  
		        data : params,  
		        dataType : "json",  
		        cache : false,  
		        error : function(textStatus, errorThrown) {  
		            alert("系统ajax交互错误: " + textStatus);  
		        },  
		        success : function(data, textStatus) {  
		          	alert("操作成功！");
		          	refresh();
		        }  
		    });  
		}
		
		//批量页面显示隐藏,批量列表显示隐藏0：页面隐藏，1：页面显示，2：列表隐藏，3：列表显示
		function batchPageDisplay(para)
		{
			var ids = $("#gridTable").jqGrid("getGridParam","selarrrow") + "";
			if (ids.length == 0) {   
			    alert("请先选择一条数据!");  
			    return false;  
			} 
			var params = {
				"formfieldids" : ids,
				"operationType" : para
			};  
		    var actionUrl = "batchPageDisplay.action";  
		    $.ajax({  
		        url : actionUrl,  
		        data : params,  
		        dataType : "json",  
		        cache : false,  
		        error : function(textStatus, errorThrown) {  
		            alert("系统ajax交互错误: " + textStatus);  
		        },  
		        success : function(data, textStatus) {  
		          	alert("修改成功！");
		          	refresh();
		        }  
		    });  
		}
		</script>
		
	</head>

	<body style="margin-bottom: 0px">
		<table width="100%" style="height: 100%">
		<input type="hidden" value="<%=request.getParameter("formTableName")%>"/>
			<tr>
				<td>
					<input type='button' value='添加字段' class='button_b' onclick="addField()"/>
					<input type='button' value='修改字段' class='button_b' onclick="editField()"  />
					<input type='button' value='删除字段' class='button_b' onclick="delField()"/>
					<input type='button' value='批量页面显示' class='button_b' onclick="batchPageDisplay(1);"/>
					<input type='button' value='批量页面隐藏' class='button_b' onclick="batchPageDisplay(0);"/>
					<input type='button' value='批量列表显示' class='button_b' onclick="batchPageDisplay(3);"/>
					<input type='button' value='批量列表隐藏' class='button_b' onclick="batchPageDisplay(2);"/>
<!--					<input type='button' value='设置主键' class='button_b' onclick="setKey()"/>-->
<!--					<input type='button' value='上移字段' class='button_b' onclick="upField()"/>-->
<!--					<input type='button' value='下移字段' class='button_b' onclick="downField()"/>-->
				</td>
			</tr>
			<tr>
				<td width="100%">
					<table id="gridTable"></table>
					<div id="gridPager"></div>
				</td>
			</tr>
		</table>
	</body>
</html>